挑战 Linux 之父认为的“不可能”:向 M1 Mac 移植 Linux
上个月苹果发布会推出的首款自研芯片 M1 ,不仅吸引了国内外评测技术网站对其性能的关注,更是在开发者的圈子内引起了轩然大波——换芯导致的生态迁移问题,令开发者们感到头疼。
这不,近日 Linux 之父 Linus Torvalds 在出席 Real World Technologies 论坛时,就被问到了他对新款 M1 Mac 的看法,Linus 对此回答:“如果它只运行 Linux ,我绝对希望拥有一个。”
M1 Mac 运行 Linux 目前“似乎不太可能”
作为曾经 11 英寸 MacBook Air 的用户,Linus 对苹果 Mac 的印象其实还不错,不过后来因为屏幕维修花费时间太长才放弃使用。Linus 指出:“我转向了性能更好的笔记本电脑,而苹果也转向了让 Linux 运行更不方便的趋势。”
对于此次搭载 M1 芯片的新款 MacBook Air , Linus 也的确很期待,因为他一直想要拥有一款支持 Linux 的 ARM 架构笔记本,并且 M1 Mac 性能几乎完美,但是,唯独 OS 不行。Linus 表示,他现在没有时间去解决新款 M1 Mac 运行 Linux 的问题,也并不想与对 Linux 不感兴趣的苹果公司作对。
没错,作对。一直以来,苹果与开源的关系四个字可以形容:爱恨交织。苹果开源了 WebKit(web browser engine)、LLVM、Swift 等优秀的项目,但却从来没有提供过开源开发人员可以充分利用其硬件所需的硬件技术细节。
在一次独家采访中,Linus 进一步说明了 M1 Mac 无法运行 Linux 的具体原因:M1 芯片的 GPU 及其周围的相关设备没有任何 Linux 支持。除非苹果愿意开放,不然无法解决,但目前看来“似乎不太可能”。
虽然如今 ARM 架构 CPU 运行 Linux 已经非常成熟了,但由于 M1 Mac 采用的是苹果自研的 GPU ,因此针对 Linux 内核需要重写底层支持,然而依照苹果以往的作风,大概率会以安全性为由拒绝提供所需的硬件信息。因此,开源开发者也没有足够的资源让他们在 Mac 上开发 Linux 支持的驱动和操作系统,近年来 Mac 也逐渐不是 Linux 用户的最佳选择。
Linus 指出:“苹果可能会在其云端运行 Linux ,却不会让他们的笔记本电脑运行。”
知名开发者启动向 M1 Mac 移植 Linux 项目
有趣的事情发生了,仿佛是为了挑战前几天 Linux 之父认为的“不可能”,12 月 1 日知名开发者 Hector Martin 在众筹平台 Patreon 上启动了一项向 M1 Mac 移植 Linux 的项目(https://www.patreon.com/marcan)。
Hector Martin 也被称为 “Marcan”,此前曾为 PlayStation 4 创建 Linux 移植。他表示,苹果 M1 Mac 让同级别的 ARM 电脑都相形见绌,如果可以运行 Linux 岂不是锦上添花?因此他开启了这个项目,但他承认,向 M1 Mac 移植 Linux 是一项艰巨的任务。
由于设备使用的是全新定制的芯片,因此工作量和投入时间预计将远远超过业余爱好的范围,Hector Martin 计划将这个项目作为他的全职工作。所以,他需要资金的支持。他开通了一个 Patreon 账户,要求每月获得 4000 美元资助,有 3/6/12/24/48 美元这五种筹款等级。
Hector Martin 在 Patreon 平台指出,他的目标是在 M1 Mac 上创建一个“实用的” Linux 移植、一个可以在日常驱动设备上使用的操作系统,而不只是一个技术演示。或许在某些设备上运行Linux是容易实现的,但想让其正常工作,那么驱动程序就需要为所有设备重新编写,这就是难点所在。
此外,Hector Martin 还就此项目的相关问题做出了回答:
个人信誉方面,Hector Martin 表示他曾经参与建立了许多非正式的开放软件支持平台,如任天堂 Wii(在硬件文档、开放库等方面贡献)、索尼 PS3(写了AsbestOS和一个Linux补丁集)、PS4(创建Linux移植)等。他经历了多次 Linux 内核补丁过程,因此了解将内容上游化所需要的东西。
同时,Hector Martin 强调,这并不属于黑客攻击,因为苹果允许在没有越狱的情况下在 M1 Mac 上启动自定义内核,并且,只要不使用 macOS 的私有代码来构建 Linux 支持,不属于 macOS 的衍生产品,那最终结果就完全合法,可发行供用户使用。
在项目公布方式上,Hector Martin 选择在 GitHub 上定期推送,全部开发过程都将公开。而如果在项目成功后资金还有剩余,那他会用来雇佣更多开发者来完成特定任务。
目前该项目的一阶段筹集目标已完成,Hector Martin 也在推特上表示:我们已经达到了启动目标!该项目将在一月份开始。
同时,Hector Martin 开启了第二阶段的筹款:我能将此项目作为我的主要工作,而不用为了维持生计去从事自由职业。第二阶段截稿前已达成 43% 。
网友评论
对于 Hector Martin 的这个项目,网友们也议论纷纷。
评论1:虽然我个人对使用这种硬件没有兴趣,但我觉得它很吸引人,我愿意花钱去了解它的进展,因为这个项目看起来像是计算性能上一个新的里程碑。
评论2:我真的希望欧洲能得到一个免税的非政府组织来处理开源软件开发的赞助。
评论3:这项目看起来雄心勃勃,令人印象深刻。但是我并没有真的在期待,因为我不认为苹果会突然改变去为人们提供文档来支持这样的项目。
评论4:我是一名大学生,无法完全在经济上为您提供支持,但祝您好运!
评论5:这似乎需要你自己承担很多工作,但我相信如果你同时接受社区中其他人的贡献,那就可以管理。
参考链接:
https://www.zdnet.com/article/linus-torvalds-would-like-to-use-an-m1-mac-for-linux-but/
https://www.patreon.com/marcan
更多精彩推荐
☞酷派奖励程序员10 万股期权!因代码贡献受 Linux 之父亲自点名赞赏
☞在英雄联盟地图中寻找“数据结构的大门”
☞Serverless 如何落地?揭秘阿里核心业务大规模落地实现
☞魅族回应 “暗中给手机植入木马”;前谷歌AI伦理专家遭解雇或因论文;GoLand 2020.3发布|极客头条
☞Ethereum2.0:深入了解Lego Money、Sharding、PoS和TPS的真相